package com.tao.utils;

import org.springframework.stereotype.Component;

import java.util.UUID;

@Component
public class UUIDUtils {
	
	
	/**
	 *32位默认长度的uuid 
	 * (获取32位uuid)
	 * 
	 * @return
	 */
	public   String getUUID()
	{
		return UUID.randomUUID().toString().replace("-", "");
	}
	
	/**
	 *
	 * (获取指定长度uuid)
	 * 
	 * @return
	 */
	public   String getUUID(int len)
	{
		if(0 >= len)
		{
			return null;
		}
		
		String uuid = getUUID();
		System.out.println(uuid);
		StringBuffer str = new StringBuffer();
		
		for (int i = 0; i < len; i++)
		{
			str.append(uuid.charAt(i));
		}
		
		return str.toString();
	}



    /**

     * 获得4个长度的十六进制的UUID

     * @return UUID

     */
    public  String get4UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[1];

    }/**

     * 获得8个长度的十六进制的UUID

     * @return UUID

     */
    public  String get8UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[0];

    }/**

     * 获得12个长度的十六进制的UUID

     * @return UUID

     */
    public  String get12UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[0]+idd[1];

    }/**

     * 获得16个长度的十六进制的UUID

     * @return UUID

     */
     public  String get16UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[0]+idd[1]+idd[2];

    }/**

     * 获得20个长度的十六进制的UUID

     * @return UUID

     */
    public  String get20UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[0]+idd[1]+idd[2]+idd[3];

    }/**

     * 获得24个长度的十六进制的UUID

     * @return UUID

     */
    public  String get24UUID(){

    UUID id=UUID.randomUUID();

    String[] idd=id.toString().split("-");

    return idd[0]+idd[1]+idd[4];

    }/**

     * 获得32个长度的十六进制的UUID

     * @return UUID

     */
    public String get32UUID(){

 UUID id=UUID.randomUUID();

 String[] idd=id.toString().split("-");

 return idd[0]+idd[1]+idd[2]+idd[3]+idd[4];

    }


}
